home *** CD-ROM | disk | FTP | other *** search
/ Mac Mania 4 / MacMania 4.toast / / Demo's / Igor Demo Pro / 1 PutContentsIn Igor Pro Folder / WaveMetrics Procedures / Analysis / Differentiate XY < prev    next >
Text File  |  1995-12-28  |  918b  |  30 lines

  1. #pragma rtGlobals=1
  2.  
  3. //    Version 1.01, 5/17/94
  4. //        Used Wave/D instead of Wave in several places.
  5. //    Version 1.10, 12/28/95
  6. //        Updated for Igor Pro 3.0. Removed /D (no longer needed).
  7.  
  8. //    DifferentiateXY(xWave, yWave, yDestWaveName)
  9. //        Produces derivative of XY pair.
  10. //        The XY pair is assumed to be sorted.
  11. //        You can sort with: Sort xWave, xWave, yWave
  12. Function DifferentiateXY(xWave, yWave, yDestWaveName)
  13.     Wave xWave, yWave                            // input X, Y waves
  14.     String yDestWaveName                        // name to use for output wave
  15.     
  16.     String xDestWaveName                        // to hold name of temp dx/dp wave
  17.     
  18.     xDestWaveName = "DifferentiateXYTempX"
  19.     
  20.     Duplicate/O xWave, $xDestWaveName        // make clones
  21.     Duplicate/O yWave, $yDestWaveName
  22.     
  23.     Wave xDest = $xDestWaveName
  24.     Wave yDest = $yDestWaveName
  25.     
  26.     Differentiate xDest, yDest                    // do differentiation
  27.     yDest /= xDest                                // take ratio
  28.     KillWaves xDest                                // don't need dx/dp anymore
  29. End
  30.